package pe.gob.onpe.facade.remote;

import java.util.List;
import javax.ejb.Remote;

import pe.gob.onpe.ejb.VistaProcesoElectoralCols;


/**
 * Remote interface for VistaProcesoElectoralColsFacade.
 * 
 * @author MyEclipse Persistence Tools
 */
@Remote
public interface VistaProcesoElectoralColsFacadeRemote {
	/**
	 * Perform an initial save of a previously unsaved VistaProcesoElectoralCols
	 * entity. All subsequent persist actions of this entity should use the
	 * #update() method.
	 * 
	 * @param entity
	 *            VistaProcesoElectoralCols entity to persist
	 * @throws RuntimeException
	 *             when the operation fails
	 */
	public void save(VistaProcesoElectoralCols entity);

	/**
	 * Delete a persistent VistaProcesoElectoralCols entity.
	 * 
	 * @param entity
	 *            VistaProcesoElectoralCols entity to delete
	 * @throws RuntimeException
	 *             when the operation fails
	 */
	public void delete(VistaProcesoElectoralCols entity);

	/**
	 * Persist a previously saved VistaProcesoElectoralCols entity and return it
	 * or a copy of it to the sender. A copy of the VistaProcesoElectoralCols
	 * entity parameter is returned when the JPA persistence mechanism has not
	 * previously been tracking the updated entity.
	 * 
	 * @param entity
	 *            VistaProcesoElectoralCols entity to update
	 * @returns VistaProcesoElectoralCols the persisted
	 *          VistaProcesoElectoralCols entity instance, may not be the same
	 * @throws RuntimeException
	 *             if the operation fails
	 */
	public VistaProcesoElectoralCols update(VistaProcesoElectoralCols entity);

	public VistaProcesoElectoralCols findById(Long id);

	/**
	 * Find all VistaProcesoElectoralCols entities with a specific property
	 * value.
	 * 
	 * @param propertyName
	 *            the name of the VistaProcesoElectoralCols property to query
	 * @param value
	 *            the property value to match
	 * @param rowStartIdxAndCount
	 *            Optional int varargs. rowStartIdxAndCount[0] specifies the the
	 *            row index in the query result-set to begin collecting the
	 *            results. rowStartIdxAndCount[1] specifies the the maximum
	 *            count of results to return.
	 * @return List<VistaProcesoElectoralCols> found by query
	 */
	public List<VistaProcesoElectoralCols> findByProperty(String propertyName,
			Object value, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByCantidadcolumnas(
			Object cantidadcolumnas, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByCodigotipoeleccion1(
			Object codigotipoeleccion1, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByNombretipoeleccion1(
			Object nombretipoeleccion1, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByCodigotipoeleccion2(
			Object codigotipoeleccion2, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByNombretipoeleccion2(
			Object nombretipoeleccion2, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByCodigotipoeleccion3(
			Object codigotipoeleccion3, int... rowStartIdxAndCount);

	public List<VistaProcesoElectoralCols> findByNombretipoeleccion3(
			Object nombretipoeleccion3, int... rowStartIdxAndCount);

	/**
	 * Find all VistaProcesoElectoralCols entities.
	 * 
	 * @param rowStartIdxAndCount
	 *            Optional int varargs. rowStartIdxAndCount[0] specifies the the
	 *            row index in the query result-set to begin collecting the
	 *            results. rowStartIdxAndCount[1] specifies the the maximum
	 *            count of results to return.
	 * @return List<VistaProcesoElectoralCols> all VistaProcesoElectoralCols
	 *         entities
	 */
	public List<VistaProcesoElectoralCols> findAll(int... rowStartIdxAndCount);
}